.\"   $Id: convertbddindexabl.3,v 1.1 2002/03/18 11:26:50 ludo Exp $
.\" @(#)convertbddindexabl.2 2.7 96/07/02 ; Labo masi cao-vlsi; Author : Jacomme Ludovic
.TH CONVERTBDDINDEXABL 3 "October 1, 1997" "ASIM/LIP6" "BDD FUNCTIONS"
.SH NAME
convertbddindexabl \- converts a \fBbdd\fP index to an \fBabl\fP expression.

.so man1/alc_origin.1
.SH SYNOPSIS
.nf
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
#include "bdd101.h"
chain_list *convertbddnodeabl( BddSystem, NameArray, IndexArray, BddNode )
  bddsystem \(**BddSystem;
  char     \(**\(**NameArray;
  bddindex  \(**IndexArray;
  bddindex      Index;
.ft R
.fi
.SH PARAMETERS
.TP 20
\fIBddSystem\fP
The \fBbdd\fP system.
.TP
\fINameArray\fP
The array of names.
.TP
\fIIndexArray\fP
The array of indexes.
.TP
\fIIndex\fP
The \fBbdd\fP index to convert.
.SH DESCRIPTION
\fBconvertbddindexabl\fP converts the \fBbdd\fP index \fIIndex\fP
to an \fBabl\fP expression in the \fBbdd\fP system \fIBddSystem\fP.
If a null pointer is given, the default \fBbdd\fP system is used.
The \fINameArray\fP, and \fIIndexArray\fP parameters are used
to translate the variable nodes into atomic expressions.
The array \fINameArray\fP is list of names.
The array \fIIndexArray\fP does the correspondence between a \fBbdd\fP index
and a slot in the \fINameArray\fP. If the \fIIndexArray\fP parameter
is a null pointer, then the name of the \fBbdd\fP index BDD_INDEX_MIN is assumed
to be the first slot of the \fINameArray\fP, and so on.
.br
.SH RETURN VALUE
\fBconvertbddindexabl\fP returns a pointer to the \fBabl\fP expression translated.
.SH EXAMPLE
.ta 3n 6n 9n 12n 15n 18n 21n
.nf
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
#include "bdd101.h"
   bddsystem  \(**BddSystem;
   bddnode    \(**BddNode;
   chain_list \(**Expr;
   char       \(**NameArray[ 1 ];
   BddSystem = createbddsystem( 100, 1000, 100, 50000 );
   BddNode   = addbddvarlast( BddSystem );
   NameArray[ 0 ] = namealloc( "i0" );
   Expr = convertbddindexabl( BddSystem, NameArray, (bddindex \(**)0,  BddNode->INDEX );
   /* displays i0 */
   viewablexpr( Expr, ABL_VIEW_VHDL );
   freeablexpr( Expr );
   destroybddsystem( (bddsystem \(**)0 );
.ft R
.fi
.SH SEE ALSO
.BR bdd (1)


.so man1/alc_bug_report.1

